﻿using System.Collections.Generic;
using System.Windows;
using System.Windows.Input;
using Innvoice.Logica.GestorDB;
using Innvoice.Logica.GestorObject;

namespace Innvoice.Ws.Facturacion.Remitos
{
    /// <summary>
    /// Lógica de interacción para ListadoRemitos.xaml
    /// </summary>
    public partial class ListadoRemitos : Window
    {
        #region Property

        private RemitoDB remitoDB = new RemitoDB();
        private List<Remito> listaRemitos = new List<Remito>();

        #endregion

        #region Contructor

        public ListadoRemitos()
        {
            InitializeComponent();
        }

        #endregion

        #region Windows Methods

        private void btnVolver_Click(object sender, RoutedEventArgs e)
        {
            this.Close();
        }

        private void btnNuevoRemito_Click(object sender, RoutedEventArgs e)
        {
            NuevoRemito();
        }

        private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            listaRemitos = remitoDB.ObtenerRemitosParaListar();

            dgListadoRemitos.Items.Clear();
            dgListadoRemitos.ItemsSource = listaRemitos;
        }

        private void Window_KeyDown(object sender, KeyEventArgs e)
        {
            switch (e.Key.ToString().ToUpper())
            {
                case "F5":
                    NuevoRemito();
                    break;
                //case "F2":
                //    EmpresaDB auxEmpresa = new EmpresaDB();
                //    WDatosEmpresa empresa = new WDatosEmpresa(auxEmpresa.datosEmpresa(12));
                //    empresa.Show();
                //    break;
                //case "F3":
                //    MostrarCategoria();
                //    break;
                //case "F4":
                //    MostrarArticulo();
                //    break;
                //case "F5":
                //    WPresentarClientes miVentanaCliente = new WPresentarClientes(12);
                //    miVentanaCliente.Show();
                //    break;
                //case "F6":
                //    MostrarSubArticulos();
                //    break;
                //case "F7":
                //    break;
                //case "F8":
                //    break;
                //case "F9":
                    //break;
                case "ESCAPE":
                    this.Close();
                    break;
                default:
                    return;
            }
        }

        #endregion

        #region Auxiliar Methods

        private void NuevoRemito() 
        {
            AltaRemito altaRemito = new AltaRemito();
            altaRemito.Show();
        }

        #endregion



    }
}
